home *** CD-ROM | disk | FTP | other *** search
/ Magnum One / Magnum One (Mid-American Digital) (Disc Manufacturing).iso / d18 / printr3.arc / PRINTR2.PRT < prev    next >
Text File  |  1991-04-28  |  46KB  |  904 lines

  1.                                                             D-Xref 6.3
  2.  12-21-1989 at 10 : 04   -  -  Listing for :  c:\turbo-5\bulletin\printr2.pas                                                Page 1
  3.  Line :   D   Statement
  4.  
  5.     1 :   0  
  6.     2 :   0   {$S-,V-} 
  7.     3 :   0   (****************************************************************************) 
  8.     4 :   0   (*                                                                          *) 
  9.     5 :   0   (*                             Mesa Software                                *) 
  10.     6 :   0   (*                       3302 Fourth Ave, Suite 101                         *) 
  11.     7 :   0   (*                          San Diego, Ca. 92103                            *) 
  12.     8 :   0   (*                                                                          *) 
  13.     9 :   0   (*                                                                          *) 
  14.    10 :   0   (*       Program :    Unit Printr2         File Name :  printr2.pas         *) 
  15.    11 :   0   (*                                                                          *) 
  16.    12 :   0   (*       Release :    Version 1.0               Date :  Dec. 15, 1989       *) 
  17.    13 :   0   (*                                                                          *) 
  18.    14 :   0   (*                                                                          *) 
  19.    15 :   0   (****************************************************************************) 
  20.    16 :   0  
  21.    17 :   0   Unit printr2; 
  22.    18 :   0   Interface 
  23.    19 :   0  
  24.    20 :   0   {Requires TJocks5. 
  25.    21 :   0   Use at your own risk. Mesa Software assumes no 
  26.    22 :   0   liability for the use of this software} 
  27.    23 :   0  
  28.    24 :   0   uses CRT,dos,fastttt5,miscttt5,winttt5,strnttt5,keyttt5; 
  29.    25 :   0  
  30.    26 :   0   G-1CONST-0H 
  31.    27 :   0   esc            = #27; 
  32.    28 :   0   off            = #0; 
  33.    29 :   0   NLQ            = (esc + '!' + #1); 
  34.    30 :   0   NLQ_OFF        = (esc + '!' + #0); 
  35.    31 :   0   Supercrpt      = (esc + 'S' + #0); 
  36.    32 :   0   Subscrpt       = (esc + 'S' + #1); 
  37.    33 :   0   scrp_off       = (esc + 'T'); 
  38.    34 :   0   Comprsd        = (esc + #15); 
  39.    35 :   0   uncomprsd      = (esc + #18); 
  40.    36 :   0   Emphaszd       = (esc + 'E'); 
  41.    37 :   0   unemphszd      = (esc + 'F'); 
  42.    38 :   0   Dbl_prtng      = (esc + 'G'); 
  43.    39 :   0   un_dbl         = (esc + 'H'); 
  44.    40 :   0  
  45.    41 :   0   dbl_wid        = (esc + 'W' + #1); 
  46.    42 :   0   un_wid         = (esc + 'W' + off); 
  47.    43 :   0  
  48.    44 :   0   {The two print commands below are the same as the two 
  49.    45 :   0   above.} 
  50.    46 :   0   expanded       = esc + '!' + #48; 
  51.    47 :   0   unexpand       = esc +  'W' + off; 
  52.    48 :   0  
  53.    49 :   0  
  54.    50 :   0   undr_lin       = (esc + '-' + #1); 
  55.    51 :   0   undr_lin_off   = (esc + '-' + off); 
  56.    52 :   0   backspc        = (#8); 
  57.    53 :   0   char_byte      = '$'; 
  58.    54 :   0   {This is the char you see in the banner and 
  59.    55 :   0   report headers.  Try !,*,#, or %.  Taylor 
  60.                                                              D-Xref 6.3
  61.  12-21-1989 at 10 : 04   -  -  Listing for :  c:\turbo-5\bulletin\printr2.pas                                                Page 2
  62.  Line :   D   Statement
  63.  
  64.    56 :   0   your chars for different reports} 
  65.    57 :   0  
  66.    58 :   0   thirteen       = 13; 
  67.    59 :   0   backspace      = #8; 
  68.    60 :   0   centered       = #27 + 'a' + #1; 
  69.    61 :   0   left_margin    = #27 + 'a' + off; 
  70.    62 :   0   line_feed      = #10; 
  71.    63 :   0   form_feed      = #12; 
  72.    64 :   0   carig_rtn      = #13; 
  73.    65 :   0   author         = 'Tom Devanney'; 
  74.    66 :   0  
  75.    67 :   0   G-1TYPE-0H 
  76.    68 :   0   Datestr = G-1STRING-0H[8]; 
  77.    69 :   0  
  78.    70 :   0   G-1VAR-0H 
  79.    71 :   0   G-1LST-0H                  : G-1TEXT-0H; 
  80.    72 :   0   page                 : G-1STRING-0H; 
  81.    73 :   0   num                  : G-1INTEGER-0H; 
  82.    74 :   0  
  83.    75 :   0   G-1FUNCTION-0H  Printer_on : G-1BOOLEAN-0H; 
  84.    76 :   0   G-1PROCEDURE-0H Beepr; 
  85.    77 :   0   G-1PROCEDURE-0H banner(co_nam,addrs,city,st,zip,phone,rpt_title : G-1STRING-0H); 
  86.    78 :   0   G-1PROCEDURE-0H Report_hdr(Rpt_Title,co_nam,addrs,city,st,zip,page : G-1STRING-0H); 
  87.    79 :   0   G-1FUNCTION-0H  IO_Not_OK(num : word) : G-1BOOLEAN-0H; 
  88.    80 :   0   G-1FUNCTION-0H  GetSystemDate : Datestr; 
  89.    81 :   0   G-1FUNCTION-0H  NumToStr(number : LongInt) : G-1STRING-0H; 
  90.    82 :   0   G-1PROCEDURE-0H Check_color(G-1VAR-0H Textf,G-1BACK-0H : G-1BYTE-0H); 
  91.    83 :   0  
  92.    84 :   0   {======================================================================} 
  93.    85 :   0  
  94.    86 :   0   Implementation 
  95.    87 :   0  
  96.    88 :   0   {======================================================================} 
  97.    89 :   0  
  98.    90 :   0  
  99.    91 :   0   G-1PROCEDURE-0H Check_color(G-1VAR-0H Textf,G-1BACK-0H : G-1BYTE-0H); 
  100.    92 :   0  
  101.    93 :   0   {This is to change any color combo into white on black for monochrome 
  102.    94 :   0   screens} 
  103.    95 :   0  
  104.    96 :   1   G-1BEGIN-0H 
  105.    97 :   1    |  G-1IF-0H (baseOfScreen <> $B800) G-1THEN-0H 
  106.    98 :   2    |  G-1BEGIN-0H 
  107.    99 :   2    |   |  Textf := 15; 
  108.   100 :   2    |   |  G-1BACK-0H  := 0; 
  109.   101 :   1    |  G-1END-0H; 
  110.   102 :   0   G-1END-0H; 
  111.   103 :   0  
  112.   104 :   0   G-1FUNCTION-0H GetSystemDate : Datestr;   {string[10]} 
  113.   105 :   0  
  114.   106 :   0   {This is to get a system date from the system and return as a string} 
  115.   107 :   0  
  116.   108 :   0   G-1VAR-0H 
  117.   109 :   0   regs         :  Registers; 
  118.   110 :   0   st2,st3,st4  : G-1STRING-0H[10]; 
  119.   111 :   0  
  120.                                                              D-Xref 6.3
  121.  12-21-1989 at 10 : 04   -  -  Listing for :  c:\turbo-5\bulletin\printr2.pas                                                Page 3
  122.  Line :   D   Statement
  123.  
  124.   112 :   1   G-1BEGIN-0H 
  125.   113 :   1    |  G-1FILLCHAR-0H(regs,G-1SIZEOF-0H(regs),0); 
  126.   114 :   1    |  Regs.AH := $2A;     {Interrupt for system date} 
  127.   115 :   1    |  G-1MSDOS-0H(regs); 
  128.   116 :   1    |  G-1WITH-0H regs G-1DO-0H 
  129.   117 :   2    |  G-1BEGIN-0H 
  130.   118 :   2    |   |  G-1STR-0H(CX, st2); {year} 
  131.   119 :   2    |   |  G-1STR-0H(DH, st3); {Month} 
  132.   120 :   2    |   |  G-1STR-0H(DL, st4); {Day} 
  133.   121 :   1    |  G-1END-0H; 
  134.   122 :   1    |  G-1IF-0H G-1LENGTH-0H(st3) = 1 G-1THEN-0H  st3 := '0' + st3; 
  135.   123 :   1    |  G-1IF-0H G-1LENGTH-0H(st4) = 1 G-1THEN-0H  st4 := '0' + st4; 
  136.   124 :   1    |  getsystemdate := st3 + '/' +  st4 + '/' + G-1COPY-0H(st2,3,2); 
  137.   125 :   0   G-1END-0H; 
  138.   126 :   0  
  139.   127 :   0  
  140.   128 :   0   G-1FUNCTION-0H NumToStr(number : LongInt) : G-1STRING-0H; 
  141.   129 :   0  
  142.   130 :   0   {-Convert a longinteger,word,integer,byte to a string} 
  143.   131 :   0  
  144.   132 :   0   G-1VAR-0H 
  145.   133 :   0   numstr : G-1STRING-0H; 
  146.   134 :   1   G-1BEGIN-0H 
  147.   135 :   1    |  G-1STR-0H(number,numstr); 
  148.   136 :   1    |  NumToStr := numstr; 
  149.   137 :   0   G-1END-0H; 
  150.   138 :   0  
  151.   139 :   0  
  152.   140 :   0   G-1PROCEDURE-0H Beepr; 
  153.   141 :   0  
  154.   142 :   0   {This is a fancy lawyer telephone beeper sound 
  155.   143 :   0   The sound you hear is money} 
  156.   144 :   0  
  157.   145 :   0   G-1CONST-0H 
  158.   146 :   0   itration = 3; 
  159.   147 :   0   G-1VAR-0H 
  160.   148 :   0   countr   : G-1INTEGER-0H; 
  161.   149 :   0  
  162.   150 :   1   G-1BEGIN-0H 
  163.   151 :   1    |  G-1FOR-0H countr := 1 G-1TO-0H itration G-1DO-0H 
  164.   152 :   2    |  G-1BEGIN-0H 
  165.   153 :   2    |   |  G-1SOUND-0H(949); {925..999} 
  166.   154 :   2    |   |  G-1DELAY-0H(50); 
  167.   155 :   2    |   |  G-1SOUND-0H(499); {450..600} 
  168.   156 :   2    |   |  G-1DELAY-0H(50); 
  169.   157 :   1    |  G-1END-0H; 
  170.   158 :   1    |  G-1NOSOUND-0H; 
  171.   159 :   0   G-1END-0H; { Beep } 
  172.   160 :   0  
  173.   161 :   0   G-1FUNCTION-0H Printer_on : G-1BOOLEAN-0H; 
  174.   162 :   0  
  175.   163 :   0   {This is a printer screen that is easy to use} 
  176.   164 :   0  
  177.   165 :   0   G-1VAR-0H 
  178.   166 :   0   line,col,end_lin, 
  179.   167 :   0   end_col,box_knd    : G-1INTEGER-0H; 
  180.                                                              D-Xref 6.3
  181.  12-21-1989 at 10 : 04   -  -  Listing for :  c:\turbo-5\bulletin\printr2.pas                                                Page 4
  182.  Line :   D   Statement
  183.  
  184.   168 :   0   Regs               : registers; 
  185.   169 :   0   answr              : G-1CHAR-0H; 
  186.   170 :   0   message            : G-1STRING-0H; 
  187.   171 :   0   textf,boxf,G-1BACK-0H    : G-1BYTE-0H; 
  188.   172 :   0  
  189.   173 :   1   G-1BEGIN-0H 
  190.   174 :   1    |  answr := ' '; 
  191.   175 :   1    |  G-1CLRSCR-0H; 
  192.   176 :   1    |  col     := 10; 
  193.   177 :   1    |  line    := 10; 
  194.   178 :   1    |  end_col := 70; 
  195.   179 :   1    |  end_lin := 20; 
  196.   180 :   1    |  box_knd := 0;  {0..4,5..9 choose another box type to suit your style} 
  197.   181 :   1    |  Printer_on := G-1FALSE-0H; 
  198.   182 :   1    |  savescreen(1); 
  199.   183 :   1    |  boxf  := white; 
  200.   184 :   1    |  G-1BACK-0H  := lightgray; 
  201.   185 :   1    |  check_color(boxf,G-1BACK-0H); 
  202.   186 :   1    |  Fbox(col,line,end_col,end_lin,boxf,G-1BACK-0H,box_knd); 
  203.   187 :   1    |  boxf  := yellow; 
  204.   188 :   1    |  G-1BACK-0H  := red; 
  205.   189 :   1    |  check_color(boxf,G-1BACK-0H); 
  206.   190 :   1    |  Fbox(col + 1 ,line + 1,end_col - 1,end_lin - 1,boxf,G-1BACK-0H,box_knd); 
  207.   191 :   1    |  G-1BACK-0H := black; 
  208.   192 :   1    |  check_color(boxf,G-1BACK-0H); 
  209.   193 :   1    |  Fbox(col + 2,line + 2,end_col - 2,end_lin - 2,boxf,G-1BACK-0H,box_knd); 
  210.   194 :   1    |  textf := yellow; 
  211.   195 :   1    |  check_color(textf,G-1BACK-0H); 
  212.   196 :   1    |  Writebetween(col,end_col,line + (end_lin - line) G-1DIV-0H 2 - 1,textf,G-1BACK-0H,'CHECK THE PRINTER FOR PAPER'); 
  213.   197 :   1    |  message := 'THE PRINTER IS READY, HIT RETURN TO START'; 
  214.   198 :   1    | 
  215.   199 :   1    |  Offcursor; 
  216.   200 :   1    |  G-1WITH-0H regs G-1DO-0H 
  217.   201 :   2    |  G-1BEGIN-0H 
  218.   202 :   2    |   |  ah := 2; 
  219.   203 :   2    |   |  dx := 0; 
  220.   204 :   2    |   |  G-1INTR-0H($17,regs); 
  221.   205 :   2    |   |  printer_on := (ah = 144); 
  222.   206 :   1    |  G-1END-0H; 
  223.   207 :   2    |  G-1REPEAT-0H 
  224.   208 :   2    |   |  G-1IF-0H (regs.ah <> 144)  G-1THEN-0H 
  225.   209 :   2    |   |  message := 'PRINTER OFF LINE, ESC TO ABORT OR RETURN TO CONTINUE'; 
  226.   210 :   2    |   |  beepr; 
  227.   211 :   2    |   |  Writebetween(col,end_col,line + (end_lin - line) G-1DIV-0H 2 + 1,textf,G-1BACK-0H, message); 
  228.   212 :   2    |   |  answr := getkey; 
  229.   213 :   2    |   |  G-1WITH-0H regs G-1DO-0H 
  230.   214 :   3    |   |  G-1BEGIN-0H 
  231.   215 :   3    |   |   |  ah := 2; 
  232.   216 :   3    |   |   |  dx := 0; 
  233.   217 :   3    |   |   |  G-1INTR-0H($17,regs); 
  234.   218 :   3    |   |   |  printer_on := (ah = 144); 
  235.   219 :   2    |   |  G-1END-0H; 
  236.   220 :   1    |  G-1UNTIL-0H ((regs.ah = 144) G-1OR-0H (answr = #27)); 
  237.   221 :   1    |  G-1IF-0H (answr = #27) G-1THEN-0H 
  238.   222 :   1    |  Printer_on := G-1FALSE-0H; 
  239.   223 :   1    |  restorescreen(1); 
  240.                                                              D-Xref 6.3
  241.  12-21-1989 at 10 : 04   -  -  Listing for :  c:\turbo-5\bulletin\printr2.pas                                                Page 5
  242.  Line :   D   Statement
  243.  
  244.   224 :   1    |  disposescreen(1); 
  245.   225 :   0   G-1END-0H; {Function  Printer_on_line} 
  246.   226 :   0  
  247.   227 :   0  
  248.   228 :   0  
  249.   229 :   0  
  250.   230 :   0  
  251.   231 :   0  
  252.   232 :   0  
  253.   233 :   0   G-1FUNCTION-0H IO_NOT_OK(num : word) : G-1BOOLEAN-0H; 
  254.   234 :   0  
  255.   235 :   0   {This is an error manager that will enable you to escape most runtime 
  256.   236 :   0   errors.  In some cases you will add recovery code after this routine 
  257.   237 :   0   to your program} 
  258.   238 :   0  
  259.   239 :   0   G-1VAR-0H 
  260.   240 :   0   msg,Drive_a, 
  261.   241 :   0   Drive_b : G-1STRING-0H; 
  262.   242 :   0  
  263.   243 :   1   G-1BEGIN-0H 
  264.   244 :   1    |  Drive_a := 'A:'; 
  265.   245 :   1    |  Drive_b := 'B:'; 
  266.   246 :   1    |  Flushkeybuffer; 
  267.   247 :   1    |  msg := ''; 
  268.   248 :   1    |  IO_Not_ok := (num <> 0); 
  269.   249 :   1    |  G-1IF-0H (num <> 0) G-1THEN-0H 
  270.   250 :   2    |  G-1BEGIN-0H 
  271.   251 :   3    |   |  G-1CASE-0H num G-1OF-0H 
  272.   252 :   3    |   |   |  002 : msg := 'File not found'; 
  273.   253 :   3    |   |   |  003 : msg := 'Path not found'; 
  274.   254 :   3    |   |   |  004 : msg := 'Too many open files, Check Files = in config.sys'; 
  275.   255 :   3    |   |   |  005 : msg := 'File access denied or Drive/Directory exists'; 
  276.   256 :   3    |   |   |  006 : msg := 'Invalid file handle'; 
  277.   257 :   3    |   |   |  012 : msg := 'Invalid file access code'; 
  278.   258 :   3    |   |   |  015 : msg := 'Invalid drive number'; 
  279.   259 :   3    |   |   |  016 : msg := 'Cannot remove current directory'; 
  280.   260 :   3    |   |   |  017 : msg := 'Cannot rename across drives'; 
  281.   261 :   3    |   |   |  100 : msg := 'Disk read error, is file open ?'; 
  282.   262 :   3    |   |   |  101 : msg := 'Disk write error, is disk full ?'; 
  283.   263 :   3    |   |   |  102 : msg := 'File not assigned, File name not assigned?'; 
  284.   264 :   3    |   |   |  103 : msg := 'File not open'; 
  285.   265 :   3    |   |   |  104 : msg := 'File not open for input'; 
  286.   266 :   3    |   |   |  105 : msg := 'File not open for output'; 
  287.   267 :   3    |   |   |  106 : msg := 'Invalid numeric format'; 
  288.   268 :   3    |   |   |  150 : msg := 'Disk is write-protected, Remove tab?'; 
  289.   269 :   3    |   |   |  151 : msg := 'Unknown unit'; 
  290.   270 :   3    |   |   |  152 : msg := 'Drive not ready, close drive door, Thank you'; 
  291.   271 :   3    |   |   |  153 : msg := 'Unknown command'; 
  292.   272 :   3    |   |   |  154 : msg := 'CRC error in data'; 
  293.   273 :   3    |   |   |  155 : msg := 'Bad drive request structure length'; 
  294.   274 :   3    |   |   |  156 : msg := 'Disk seek error'; 
  295.   275 :   3    |   |   |  {I use error 157 to sense an unformatted floppy.} 
  296.   276 :   3    |   |   |  157 : msg := 'Unknown media type. We will format Floppy.'; 
  297.   277 :   3    |   |   |  158 : msg := 'Sector not found'; 
  298.   278 :   3    |   |   |  159 : msg := 'Printer out of paper, so put some in'; 
  299.   279 :   3    |   |   |  160 : msg := 'Device write fault. Usually printer is off'; 
  300.                                                              D-Xref 6.3
  301.  12-21-1989 at 10 : 04   -  -  Listing for :  c:\turbo-5\bulletin\printr2.pas                                                Page 6
  302.  Line :   D   Statement
  303.  
  304.   280 :   3    |   |   |  161 : msg := 'Device read fault'; 
  305.   281 :   3    |   |   |  162 : msg := 'Hardware failure'; 
  306.   282 :   3    |   |   |  200 : msg := 'Division by zero'; 
  307.   283 :   3    |   |   |  201 : msg := 'Range check error'; 
  308.   284 :   3    |   |   |  202 : msg := 'Stack overflow'; 
  309.   285 :   3    |   |   |  203 : msg := 'Insufficient memory'; 
  310.   286 :   3    |   |   |  204 : msg := 'Invalid pointer operation'; 
  311.   287 :   3    |   |   |  205 : msg := 'Floating point overflow, number too big'; 
  312.   288 :   3    |   |   |  206 : msg := 'Floating point underflow'; 
  313.   289 :   3    |   |   |  207 : msg := 'Invalid floating point operation'; 
  314.   290 :   3    |   |   |  208 : msg := 'Overlay manager not installed'; 
  315.   291 :   3    |   |   |  209 : msg := 'Overlay file read error'; 
  316.   292 :   3    |   |   |  G-1ELSE-0H 
  317.   293 :   3    |   |   |  msg := 'Turbo runtime error '+ NumToStr(num); 
  318.   294 :   2    |   |  G-1END-0H; 
  319.   295 :   2    |   |  savescreen(5); 
  320.   296 :   2    |   |  {These colors are for ega/vga, monochrome is not supported 
  321.   297 :   2    |   |  Here is a hint for good window/message formatting. 
  322.   298 :   2    |   |  Choose an odd number of lines for the window and 
  323.   299 :   2    |   |  an odd number of messages to display 
  324.   300 :   2    |   |  or     an even number of lines for the window and 
  325.   301 :   2    |   |  an even number of messages to display. 
  326.   302 :   2    |   |  Display your message centered in the window or box and the 
  327.   303 :   2    |   |  screen will look superb.  Makes happy satisfied users} 
  328.   304 :   2    |   | 
  329.   305 :   2    |   |  Mkwin(10,8,70,17,yellow, lightgray,4); 
  330.   306 :   2    |   |  Writebetween(11,69,13,black,lightgray,upper(msg)); 
  331.   307 :   2    |   |  Writebetween(11,69,14,black,lightgray,'HIT RETURN TO CONTINUE'); 
  332.   308 :   2    |   |  G-1READLN-0H; 
  333.   309 :   2    |   |  restorescreen(5); 
  334.   310 :   2    |   |  disposescreen(5); 
  335.   311 :   2    |   |  G-1IF-0H ((num = 157) G-1OR-0H (num = 3)) G-1THEN-0H 
  336.   312 :   3    |   |  G-1BEGIN-0H 
  337.   313 :   3    |   |   |  G-1CLRSCR-0H; 
  338.   314 :   3    |   |   |  SwapVectors; 
  339.   315 :   3    |   |   |  Exec(GetEnv('COMSPEC'), '/C Format ' + Drive_a); 
  340.   316 :   3    |   |   |  SwapVectors; 
  341.   317 :   3    |   |   |  G-1IF-0H DosError <> 0 G-1THEN-0H 
  342.   318 :   4    |   |   |  G-1BEGIN-0H 
  343.   319 :   4    |   |   |   |  Writebetween(11,69,13,black,lightgray,upper('Could not execute COMMAND.COM')); 
  344.   320 :   4    |   |   |   |  G-1READLN-0H; 
  345.   321 :   3    |   |   |  G-1END-0H 
  346.   322 :   3    |   |   |  G-1ELSE-0H 
  347.   323 :   4    |   |   |  G-1BEGIN-0H 
  348.   324 :   4    |   |   |   |  Writebetween(11,69,13,black,lightgray,upper('Disk ' + Drive_a + ' is Formatted')); 
  349.   325 :   4    |   |   |   |  G-1READLN-0H; 
  350.   326 :   3    |   |   |  G-1END-0H; 
  351.   327 :   2    |   |  G-1END-0H; 
  352.   328 :   1    |  G-1END-0H; 
  353.   329 :   0   G-1END-0H; 
  354.   330 :   0  
  355.   331 :   0  
  356.   332 :   0   (**************************************************************************) 
  357.   333 :   0   (*                                                                        *) 
  358.   334 :   0   (*                                                                        *) 
  359.   335 :   0   (*                            Mesa Software                               *) 
  360.                                                              D-Xref 6.3
  361.  12-21-1989 at 10 : 04   -  -  Listing for :  c:\turbo-5\bulletin\printr2.pas                                                Page 7
  362.  Line :   D   Statement
  363.  
  364.   336 :   0   (*                       3302 Fourth Ave, Suite 101                       *) 
  365.   337 :   0   (*                          San Diego, Ca. 92103                          *) 
  366.   338 :   0   (*                                                                        *) 
  367.   339 :   0   (*                                                                        *) 
  368.   340 :   0   (*       Procedure :   Banner            File Name : Printr2.pas          *) 
  369.   341 :   0   (*                                                                        *) 
  370.   342 :   0   (*       Release   :   Version 1.0            Date : Dec 15, 1989         *) 
  371.   343 :   0   (*                                                                        *) 
  372.   344 :   0   (*                                                                        *) 
  373.   345 :   0   (*                                                                        *) 
  374.   346 :   0   (**************************************************************************) 
  375.   347 :   0  
  376.   348 :   0  
  377.   349 :   0   G-1PROCEDURE-0H banner(co_nam,addrs,city,st,zip,phone,rpt_title : G-1STRING-0H); 
  378.   350 :   0  
  379.   351 :   0   (*  this is a procedure with the following call: 
  380.   352 :   0   banner(co_nam,addrs,City,st,zip,rpt_title); 
  381.   353 :   0  
  382.   354 :   0   co_nam    := 'MESA SOFTWARE'; 
  383.   355 :   0   addrs     := '3302 FOURTH AVENUE, SUITE 101'; 
  384.   356 :   0   city      := 'SAN DIEGO'; {If necessary,A routine will add the comma} 
  385.   357 :   0   st        := 'CALIFORNIA'; 
  386.   358 :   0   zip       := '92103'; 
  387.   359 :   0   phone     := '1(555)555-5555'; 
  388.   360 :   0   rpt_title := 'ACCOUNTS RECEIVABLE AGING REPORT'; 
  389.   361 :   0   dte       := Date; this date routine is in Technojocks.miscttt unit. 
  390.   362 :   0  
  391.   363 :   0   We have Tested it using a Panasonic 1592. The routine is flexible enough to 
  392.   364 :   0   take most any size strings within reason. Watch the report titles as they 
  393.   365 :   0   are expanded, centered and added to. Check the code for comma addition. 
  394.   366 :   0  
  395.   367 :   0   *) 
  396.   368 :   0  
  397.   369 :   0   G-1VAR-0H 
  398.   370 :   0   i,j,k,pag_lnth, 
  399.   371 :   0   lin_lnth,lin_counter,char_count, 
  400.   372 :   0   Top_headr,bottom_headr,title_lines      : G-1INTEGER-0H; 
  401.   373 :   0   page                                    : G-1STRING-0H; 
  402.   374 :   0  
  403.   375 :   0  
  404.   376 :   0  
  405.   377 :   0   G-1PROCEDURE-0H Banner_Top; 
  406.   378 :   0  
  407.   379 :   0   G-1VAR-0H 
  408.   380 :   0   countr,i : G-1INTEGER-0H; 
  409.   381 :   0  
  410.   382 :   1   G-1BEGIN-0H 
  411.   383 :   1    |  G-1FOR-0H countr := 1 G-1TO-0H top_headr G-1DO-0H 
  412.   384 :   2    |  G-1BEGIN-0H 
  413.   385 :   2    |   |  G-1FOR-0H i := 1 G-1TO-0H lin_lnth G-1DO-0H 
  414.   386 :   2    |   |  G-1WRITE-0H(G-1LST-0H,char_byte); 
  415.   387 :   2    |   |  G-1WRITELN-0H(G-1LST-0H); 
  416.   388 :   2    |   |  char_count := 0; 
  417.   389 :   2    |   |  inc(lin_counter); 
  418.   390 :   1    |  G-1END-0H; 
  419.   391 :   0   G-1END-0H; 
  420.                                                              D-Xref 6.3
  421.  12-21-1989 at 10 : 04   -  -  Listing for :  c:\turbo-5\bulletin\printr2.pas                                                Page 8
  422.  Line :   D   Statement
  423.  
  424.   392 :   0  
  425.   393 :   0   G-1PROCEDURE-0H Banner_Bottom; 
  426.   394 :   0  
  427.   395 :   0   G-1VAR-0H 
  428.   396 :   0   countr,i : G-1INTEGER-0H; 
  429.   397 :   0  
  430.   398 :   1   G-1BEGIN-0H 
  431.   399 :   1    |  G-1FOR-0H countr := 1 G-1TO-0H bottom_headr G-1DO-0H 
  432.   400 :   2    |  G-1BEGIN-0H 
  433.   401 :   2    |   |  G-1FOR-0H i := 1 G-1TO-0H lin_lnth - 1  G-1DO-0H 
  434.   402 :   2    |   |  G-1WRITE-0H(G-1LST-0H,char_byte); 
  435.   403 :   2    |   |  G-1WRITELN-0H(G-1LST-0H,char_byte); 
  436.   404 :   1    |  G-1END-0H; 
  437.   405 :   1    |  G-1FOR-0H countr := 1 G-1TO-0H 5 G-1DO-0H 
  438.   406 :   1    |  G-1WRITELN-0H(G-1LST-0H); 
  439.   407 :   1    |  {After this routine, the form length, etc, should be set 
  440.   408 :   1    |  for your report paging to follow} 
  441.   409 :   0   G-1END-0H; 
  442.   410 :   0  
  443.   411 :   0  
  444.   412 :   0   G-1PROCEDURE-0H Banner_left; 
  445.   413 :   0  
  446.   414 :   1   G-1BEGIN-0H 
  447.   415 :   1    | 
  448.   416 :   1    |  {You can use most any replicating code to write the 
  449.   417 :   1    |  following. The sample below will give you an option for most 
  450.   418 :   1    |  of banner routines. You probably know the argument. My code is 
  451.   419 :   1    |  perfect, yours is not so perfect. So Help Yourself. 
  452.   420 :   1    |  You must be careful with the TJocks.Fastttt5.Replicate Function. 
  453.   421 :   1    |  There is a LIMIT of 80 characters. The function is primarily for 
  454.   422 :   1    |  screen writes, so be careful in using it for printer lengths over 
  455.   423 :   1    |  80 characters, it returns a value of 1.} 
  456.   424 :   1    | 
  457.   425 :   1    |  G-1WRITE-0H(G-1LST-0H,#27 + 'a' + #0); 
  458.   426 :   1    |  G-1WRITE-0H(G-1LST-0H,replicate(10,char_byte)); 
  459.   427 :   1    |  G-1WRITE-0H(G-1LST-0H,#27 + 'j' + #0); 
  460.   428 :   0   G-1END-0H; 
  461.   429 :   0  
  462.   430 :   0   G-1PROCEDURE-0H Banner_right; 
  463.   431 :   0  
  464.   432 :   1   G-1BEGIN-0H 
  465.   433 :   1    |  G-1WRITE-0H(G-1LST-0H,#27 + 'a' + #2); 
  466.   434 :   1    |  G-1WRITE-0H(G-1LST-0H,#27 + 'Q' + #132); 
  467.   435 :   1    |  G-1WRITELN-0H(G-1LST-0H,replicate(10,char_byte)); 
  468.   436 :   0   G-1END-0H; 
  469.   437 :   0  
  470.   438 :   0   G-1PROCEDURE-0H Filler_Line; 
  471.   439 :   0  
  472.   440 :   1   G-1BEGIN-0H 
  473.   441 :   1    |  Banner_Left; 
  474.   442 :   1    |  Banner_Right; 
  475.   443 :   0   G-1END-0H; 
  476.   444 :   0  
  477.   445 :   0  
  478.   446 :   0   G-1PROCEDURE-0H Filler(num : G-1INTEGER-0H); 
  479.   447 :   0  
  480.                                                              D-Xref 6.3
  481.  12-21-1989 at 10 : 04   -  -  Listing for :  c:\turbo-5\bulletin\printr2.pas                                                Page 9
  482.  Line :   D   Statement
  483.  
  484.   448 :   0   G-1VAR-0H 
  485.   449 :   0   countr      : G-1INTEGER-0H; 
  486.   450 :   0  
  487.   451 :   1   G-1BEGIN-0H 
  488.   452 :   1    |  G-1FOR-0H countr := 1 G-1TO-0H num G-1DO-0H 
  489.   453 :   2    |  G-1BEGIN-0H 
  490.   454 :   2    |   |  Filler_Line; 
  491.   455 :   1    |  G-1END-0H; 
  492.   456 :   0   G-1END-0H; 
  493.   457 :   0  
  494.   458 :   0   G-1PROCEDURE-0H Names; 
  495.   459 :   0  
  496.   460 :   1   G-1BEGIN-0H 
  497.   461 :   1    |  G-1IF-0H G-1COPY-0H(city,G-1LENGTH-0H(city),1) <> ',' G-1THEN-0H    {We add a comma if necessary} 
  498.   462 :   1    |  city := city + ', ' +  st + '  ' + zip 
  499.   463 :   1    |  G-1ELSE-0H 
  500.   464 :   1    |  city := city + ' ' + st + '  ' + zip; 
  501.   465 :   0   G-1END-0H; 
  502.   466 :   0  
  503.   467 :   0   G-1PROCEDURE-0H Report_Title(str1 : G-1STRING-0H); 
  504.   468 :   0  
  505.   469 :   1   G-1BEGIN-0H 
  506.   470 :   1    |  banner_left; 
  507.   471 :   1    |  G-1WRITE-0H(G-1LST-0H,#27 + 'a' + #1); {Auto Centering} 
  508.   472 :   1    |  G-1WRITE-0H(G-1LST-0H,#27 + '!' + #48); {Double width/double strike printing} 
  509.   473 :   1    |  G-1WRITE-0H(G-1LST-0H,str1); 
  510.   474 :   1    |  G-1WRITE-0H(G-1LST-0H,#27 + 'W' + #0); 
  511.   475 :   1    |  G-1WRITE-0H(G-1LST-0H,#27 + 'H'); 
  512.   476 :   1    |  G-1WRITE-0H(G-1LST-0H,#27 + '!' + #0); 
  513.   477 :   1    |  G-1WRITE-0H(G-1LST-0H,#27 + 'j' + #0); 
  514.   478 :   1    |  banner_right; 
  515.   479 :   0   G-1END-0H; 
  516.   480 :   0  
  517.   481 :   0  
  518.   482 :   0   G-1PROCEDURE-0H Title(sub_title : G-1STRING-0H); 
  519.   483 :   0  
  520.   484 :   1   G-1BEGIN-0H 
  521.   485 :   1    |  Banner_left; 
  522.   486 :   1    |  G-1WRITE-0H(G-1LST-0H,#27 + 'a' + #1); 
  523.   487 :   1    |  G-1WRITE-0H(G-1LST-0H,upper(sub_title)); 
  524.   488 :   1    |  G-1WRITE-0H(G-1LST-0H,#27 + 'j' + #0); 
  525.   489 :   1    |  Banner_Right; 
  526.   490 :   0   G-1END-0H; 
  527.   491 :   0  
  528.   492 :   1   G-1BEGIN-0H 
  529.   493 :   1    |  G-1WRITE-0H(G-1LST-0H,#27,'@');     {Initializes the printer} 
  530.   494 :   1    |  G-1WRITE-0H(G-1LST-0H,#27+'C'+#62); {Sets the page length to 62 lines} 
  531.   495 :   1    |  top_headr    := 6;      {This is the top lines to fill} 
  532.   496 :   1    |  pag_lnth     := 60;     {This is the page length  50..66} 
  533.   497 :   1    |  Bottom_headr := 6;      {Same as top_headr} 
  534.   498 :   1    |  lin_lnth     := 132;    {This was written using wide carriage. Try 80} 
  535.   499 :   1    |  lin_counter  := 1; 
  536.   500 :   1    |  title_lines  := 5;      {We need this to calculate top and bottom filler space} 
  537.   501 :   1    |  char_count   := 0; 
  538.   502 :   1    |  Names; 
  539.   503 :   1    |  banner_top; 
  540.                                                              D-Xref 6.3
  541.  12-21-1989 at 10 : 04   -  -  Listing for :  c:\turbo-5\bulletin\printr2.pas                                               Page 10
  542.  Line :   D   Statement
  543.  
  544.   504 :   1    |  num := ((pag_lnth  - 20) G-1DIV-0H 2 - 1); 
  545.   505 :   1    |  Filler(num); 
  546.   506 :   1    |  rpt_title := upper(rpt_title); 
  547.   507 :   1    |  report_title(rpt_title); 
  548.   508 :   1    |  num := 2; 
  549.   509 :   1    |  Filler(num); 
  550.   510 :   1    |  title(date); 
  551.   511 :   1    |  num := 11; 
  552.   512 :   1    |  Filler(num); 
  553.   513 :   1    |  title(co_nam); 
  554.   514 :   1    |  title(addrs); 
  555.   515 :   1    |  title(city); 
  556.   516 :   1    |  title(phone); 
  557.   517 :   1    |  num := 12; 
  558.   518 :   1    |  Filler(num); 
  559.   519 :   1    |  Banner_bottom; 
  560.   520 :   0   G-1END-0H; 
  561.   521 :   0  
  562.   522 :   0  
  563.   523 :   0   (***************************************************************************) 
  564.   524 :   0   (*                                                                         *) 
  565.   525 :   0   (*                            Mesa Software                                *) 
  566.   526 :   0   (*                       3302 Fourth Ave, Suite 101                        *) 
  567.   527 :   0   (*                          San Diego, Ca. 92103                           *) 
  568.   528 :   0   (*                                                                         *) 
  569.   529 :   0   (*                                                                         *) 
  570.   530 :   0   (*     Procedure :    Report-hdr;          File Name :  PRINTR2.PAS        *) 
  571.   531 :   0   (*                                                                         *) 
  572.   532 :   0   (*       Release :    Version 1.0               Date :  Dec 15,1989        *) 
  573.   533 :   0   (*                                                                         *) 
  574.   534 :   0   (*                                                                         *) 
  575.   535 :   0   (*                                                                         *) 
  576.   536 :   0   (***************************************************************************) 
  577.   537 :   0  
  578.   538 :   0   G-1PROCEDURE-0H Report_hdr(Rpt_Title,co_nam,addrs,city,st,zip,page : G-1STRING-0H); 
  579.   539 :   0  
  580.   540 :   0  
  581.   541 :   0  
  582.   542 :   0   (*  This is a procedure with the following call: 
  583.   543 :   0   Report_Hdr(Rpt_Title,co_nam,addrs,City,st,zip,rpt_title,page); 
  584.   544 :   0  
  585.   545 :   0   co_nam    := 'MESA SOFTWARE'; 
  586.   546 :   0   addrs     := '3302 FOURTH AVENUE, SUITE 101'; 
  587.   547 :   0   city      := 'SAN DIEGO'; 
  588.   548 :   0   st        := 'CALIFORNIA'; 
  589.   549 :   0   zip       := '92103'; 
  590.   550 :   0   phone     := '1(555)555-5555'; 
  591.   551 :   0   dte       := Date; this date routine is in Technojocks, sub your own 
  592.   552 :   0   Rpt_Title := 'ACCOUNTS RECEIVABLE AGING REPORT'; 
  593.   553 :   0  
  594.   554 :   0   The code here is different from Banner. Choose your own style. 
  595.   555 :   0   *) 
  596.   556 :   0   G-1VAR-0H 
  597.   557 :   0   i,j,k,lnth,pag_num : G-1INTEGER-0H; 
  598.   558 :   0   pag                : G-1STRING-0H; 
  599.   559 :   0  
  600.                                                              D-Xref 6.3
  601.  12-21-1989 at 10 : 04   -  -  Listing for :  c:\turbo-5\bulletin\printr2.pas                                               Page 11
  602.  Line :   D   Statement
  603.  
  604.   560 :   0  
  605.   561 :   0   G-1PROCEDURE-0H Title(rpt_title : G-1STRING-0H); 
  606.   562 :   0  
  607.   563 :   0   G-1VAR-0H i : G-1INTEGER-0H; 
  608.   564 :   1   G-1BEGIN-0H 
  609.   565 :   1    |  G-1FOR-0H i := 1 G-1TO-0H (lnth G-1DIV-0H 2)  G-1DO-0H G-1WRITE-0H(G-1LST-0H,' '); 
  610.   566 :   1    |  j := i; 
  611.   567 :   1    |  G-1WRITE-0H(G-1LST-0H,expanded); 
  612.   568 :   1    |  G-1WRITE-0H(G-1LST-0H,Emphaszd); 
  613.   569 :   1    |  i := G-1LENGTH-0H(rpt_title); 
  614.   570 :   1    |  G-1IF-0H G-1ODD-0H(i) G-1THEN-0H rpt_title := rpt_title + ' '; 
  615.   571 :   1    |  G-1FOR-0H i:= 1 G-1TO-0H G-1LENGTH-0H(rpt_title) G-1DIV-0H 2 G-1DO-0H 
  616.   572 :   1    |  G-1WRITE-0H(G-1LST-0H,#8); 
  617.   573 :   1    |  G-1WRITE-0H(G-1LST-0H,rpt_title); 
  618.   574 :   1    |  G-1WRITE-0H(G-1LST-0H,unexpand); 
  619.   575 :   1    |  j := i + G-1LENGTH-0H(rpt_title) G-1DIV-0H 2; 
  620.   576 :   1    |  j := j  + (lnth G-1DIV-0H 2); 
  621.   577 :   0   G-1END-0H; 
  622.   578 :   0  
  623.   579 :   0  
  624.   580 :   0   G-1PROCEDURE-0H Wrt_Address; 
  625.   581 :   0  
  626.   582 :   0   G-1VAR-0H 
  627.   583 :   0   k : G-1INTEGER-0H; 
  628.   584 :   0  
  629.   585 :   1   G-1BEGIN-0H 
  630.   586 :   1    |  addrs := ''; 
  631.   587 :   1    |  addrs := co_nam + ' ' + addrs + ' ' + city + ' ' + st + '  ' + zip; 
  632.   588 :   1    |  G-1IF-0H G-1ODD-0H(G-1LENGTH-0H(addrs)) G-1THEN-0H addrs := addrs + ' '; 
  633.   589 :   1    |  G-1FOR-0H k := 1 G-1TO-0H lnth G-1DIV-0H 2 - (G-1LENGTH-0H(addrs) G-1DIV-0H 2) G-1DO-0H 
  634.   590 :   1    |  G-1WRITE-0H(G-1LST-0H,#32); 
  635.   591 :   1    |  G-1WRITE-0H(G-1LST-0H,Emphaszd,addrs); 
  636.   592 :   1    |  j := lnth G-1DIV-0H 2 + G-1LENGTH-0H(addrs) G-1DIV-0H 2; 
  637.   593 :   0   G-1END-0H; 
  638.   594 :   0  
  639.   595 :   0   G-1PROCEDURE-0H Wrt_Date; 
  640.   596 :   0   G-1VAR-0H 
  641.   597 :   0   i : G-1INTEGER-0H; 
  642.   598 :   1   G-1BEGIN-0H 
  643.   599 :   1    |  G-1FOR-0H i :=  1 G-1TO-0H lnth - (j + G-1LENGTH-0H(date) - 1) G-1DO-0H 
  644.   600 :   1    |  G-1WRITE-0H(G-1LST-0H,#32); 
  645.   601 :   1    |  G-1WRITELN-0H(G-1LST-0H,date); 
  646.   602 :   0   G-1END-0H; 
  647.   603 :   0  
  648.   604 :   0   G-1PROCEDURE-0H Wrt_city; 
  649.   605 :   0   G-1VAR-0H 
  650.   606 :   0   i : G-1INTEGER-0H; 
  651.   607 :   1   G-1BEGIN-0H 
  652.   608 :   1    |  city := city + ' ' + st + '  ' + zip; 
  653.   609 :   1    |  k := G-1LENGTH-0H(city); 
  654.   610 :   1    |  G-1FOR-0H i := 1 G-1TO-0H lnth G-1DIV-0H 2  - (k G-1DIV-0H 2) G-1DO-0H 
  655.   611 :   1    |  G-1WRITE-0H(G-1LST-0H,#32); 
  656.   612 :   1    |  G-1WRITE-0H(G-1LST-0H,city); 
  657.   613 :   1    |  j := lnth G-1DIV-0H 2 + (G-1LENGTH-0H(city)  G-1DIV-0H 2); 
  658.   614 :   0   G-1END-0H; 
  659.   615 :   0  
  660.                                                              D-Xref 6.3
  661.  12-21-1989 at 10 : 04   -  -  Listing for :  c:\turbo-5\bulletin\printr2.pas                                               Page 12
  662.  Line :   D   Statement
  663.  
  664.   616 :   0   G-1PROCEDURE-0H Wrt_page; 
  665.   617 :   0   G-1VAR-0H 
  666.   618 :   0   i : G-1INTEGER-0H; 
  667.   619 :   1   G-1BEGIN-0H 
  668.   620 :   1    |  inc(pag_num); 
  669.   621 :   1    |  G-1STR-0H(pag_num,pag); 
  670.   622 :   1    |  page := page + pag; 
  671.   623 :   1    |  G-1FOR-0H i := 1 G-1TO-0H lnth - (j + G-1LENGTH-0H(page)) G-1DO-0H 
  672.   624 :   1    |  G-1WRITE-0H(G-1LST-0H,#32); 
  673.   625 :   1    |  G-1WRITELN-0H(G-1LST-0H,page); 
  674.   626 :   1    |  j := 0; 
  675.   627 :   0   G-1END-0H; 
  676.   628 :   0  
  677.   629 :   1   G-1BEGIN-0H 
  678.   630 :   1    |  page := 'Page No. '; 
  679.   631 :   1    |  pag_num := 0; 
  680.   632 :   1    |  lnth := 132; 
  681.   633 :   1    |  G-1WRITE-0H(G-1LST-0H,#27 + '@'); 
  682.   634 :   1    |  G-1WRITE-0H(G-1LST-0H,#27 + 'P'); 
  683.   635 :   1    |  Title(rpt_title); 
  684.   636 :   1    |  wrt_page; 
  685.   637 :   1    |  Wrt_address; 
  686.   638 :   1    |  Wrt_Date; 
  687.   639 :   1    |  G-1FOR-0H i := 1 G-1TO-0H lnth G-1DO-0H 
  688.   640 :   2    |  G-1BEGIN-0H 
  689.   641 :   2    |   |  G-1WRITE-0H(G-1LST-0H,char_byte); 
  690.   642 :   2    |   |  G-1IF-0H (i = lnth G-1DIV-0H 2) G-1THEN-0H G-1WRITE-0H(G-1LST-0H,'!'); 
  691.   643 :   1    |  G-1END-0H; 
  692.   644 :   1    |  G-1FOR-0H i := 1 G-1TO-0H 2 G-1DO-0H G-1WRITELN-0H(G-1LST-0H); 
  693.   645 :   1    |  G-1WRITE-0H(G-1LST-0H,#27 + '<');  {Home the print head} 
  694.   646 :   0   G-1END-0H; 
  695.   647 :   0  
  696.   648 :   1   G-1BEGIN-0H 
  697.   649 :   1    |  G-1ASSIGN-0H(G-1LST-0H,'LPT1'); 
  698.   650 :   1    |  G-1REWRITE-0H(G-1LST-0H); 
  699.   651 :   0   G-1END-0H. 
  700.                                                           D-Xref 6.3
  701.  12-21-1989 at 10 : 04   -  -  Cross Reference for :  c:\turbo-5\bulletin\printr2.pas                                  Page 13
  702.                                                                                                        Cross Reference Page  1
  703.  
  704.      A                114
  705.      ADDRS             77   78  349  514  538  586  587  587  588  588  588  589  591  592
  706.      AH               114  202  205  208  215  218  220
  707.      ANSWR            169  174  212  220  221
  708.      AUTHOR            65
  709.      B800              97
  710.      BACKSPACE         59
  711.      BACKSPC           52
  712.      BANNER            77  349
  713.      BANNER_BOTTOM    393  519
  714.      BANNER_LEFT      412  441  470  485
  715.      BANNER_RIGHT     430  442  478  489
  716.      BANNER_TOP       377  503
  717.      BASEOFSCREEN      97
  718.      BEEPR             76  140  210
  719.      BLACK            191  306  307  319  324
  720.      BOTTOM_HEADR     372  399  497
  721.      BOXF             171  183  185  186  187  189  190  192  193
  722.      BOX_KND          167  180  186  190  193
  723.      CARIG_RTN         64
  724.      CENTERED          60
  725.      CHAR_BYTE         53  386  402  403  426  435  641
  726.      CHAR_COUNT       371  388  501
  727.      CHECK_COLOR       82   91  185  189  192  195
  728.      CITY              77   78  349  461  461  462  462  464  464  515  538  587  608  608  609  612  613
  729.      COL              166  176  186  190  193  196  211
  730.      COMPRSD           34
  731.      COUNTR           148  151  380  383  396  399  405  449  452
  732.      CO_NAM            77   78  349  513  538  587
  733.      CRT               24
  734.      CX               118
  735.      DATE             510  599  601
  736.      DATESTR           68   80  104
  737.      DBL_PRTNG         38
  738.      DBL_WID           41
  739.      DH               119
  740.      DISPOSESCREEN    224  310
  741.      DL               120
  742.      DOS               24
  743.      DOSERROR         317
  744.      DRIVE_A          240  244  315  324
  745.      DRIVE_B          241  245
  746.      DX               203  216
  747.      EMPHASZD          36  568  591
  748.      END_COL          167  178  186  190  193  196  211
  749.      END_LIN          166  179  186  190  193  196  211
  750.      ESC               27   29   30   31   32   33   34   35   36   37   38   39   41   42   46   47   50   51
  751.      EXEC             315
  752.      EXPANDED          46  567
  753.      FASTTTT5          24
  754.      FBOX             186  190  193
  755.      FILLER           446  505  509  512  518
  756.      FILLER_LINE      438  454
  757.      FLUSHKEYBUFFER   246
  758.      FORM_FEED         63
  759.      GETENV           315
  760.                                                           D-Xref 6.3
  761.  12-21-1989 at 10 : 04   -  -  Cross Reference for :  c:\turbo-5\bulletin\printr2.pas                                  Page 14
  762.                                                                                                        Cross Reference Page  2
  763.  
  764.      GETKEY           212
  765.      GETSYSTEMDATE     80  104  124
  766.      I                370  380  385  396  401  557  563  565  566  569  570  571  575  597  599  606  610  618  623  639  642  644
  767.      IMPLEMENTATION    86
  768.      INC              389  620
  769.      INTERFACE         18
  770.      IO_NOT_OK         79  233  248
  771.      ITRATION         146  151
  772.      J                370  557  566  575  576  576  592  599  613  623  626
  773.      K                370  557  583  589  609  610
  774.      KEYTTT5           24
  775.      LEFT_MARGIN       61
  776.      LIGHTGRAY        184  305  306  307  319  324
  777.      LINE             166  177  186  190  193  196  196  211  211
  778.      LINE_FEED         62
  779.      LIN_COUNTER      371  389  499
  780.      LIN_LNTH         371  385  401  498
  781.      LNTH             557  565  576  589  592  599  610  613  623  632  639  642
  782.      LONGINT           81  128
  783.      MESSAGE          170  197  209  211
  784.      MISCTTT5          24
  785.      MKWIN            305
  786.      MSG              240  247  252  253  254  255  256  257  258  259  260  261  262  263  264  265  266  267  268  269  270  271
  787.                       270  271  272  273  274  276  277  278  279  280  281  282  283  284  285  286  287  288  289  290  291  293
  788.                       291  293  306
  789.      NAMES            458  502
  790.      NLQ               29
  791.      NLQ_OFF           30
  792.      NUM               73   79  233  248  249  251  293  311  311  446  452  504  505  508  509  511  512  517  518
  793.      NUMBER            81  128  135
  794.      NUMSTR           133  135  136
  795.      NUMTOSTR          81  128  136  293
  796.      OFF               28   42   47   51   61
  797.      OFFCURSOR        199
  798.      PAG              558  621  622
  799.      PAGE              72   78  373  538  622  622  623  625  630
  800.      PAG_LNTH         370  496  504
  801.      PAG_NUM          557  620  621  631
  802.      PHONE             77  349  516
  803.      PRINTER_ON        75  161  181  205  218  222
  804.      PRINTR2           17
  805.      RED              188
  806.      REGISTERS        109  168
  807.      REGS             109  113  113  114  115  116  168  200  204  208  213  217  220
  808.      REPLICATE        426  435
  809.      REPORT_HDR        78  538
  810.      REPORT_TITLE     467  507
  811.      RESTORESCREEN    223  309
  812.      RPT_TITLE         77   78  349  506  506  507  538  561  569  570  570  571  573  575  635
  813.      SAVESCREEN       182  295
  814.      SCRP_OFF          33
  815.      ST                77   78  349  462  464  538  587  608
  816.      ST2              110  118  124
  817.      ST3              110  119  122  122  122  124
  818.      ST4              110  120  123  123  123  124
  819.      STR1             467  473
  820.                                                           D-Xref 6.3
  821.  12-21-1989 at 10 : 04   -  -  Cross Reference for :  c:\turbo-5\bulletin\printr2.pas                                  Page 15
  822.                                                                                                        Cross Reference Page  3
  823.  
  824.      STRNTTT5          24
  825.      SUBSCRPT          32
  826.      SUB_TITLE        482  487
  827.      SUPERCRPT         31
  828.      SWAPVECTORS      314  316
  829.      TEXTF             82   91   99  171  194  195  196  211
  830.      THIRTEEN          58
  831.      TITLE            482  510  513  514  515  516  561  635
  832.      TITLE_LINES      372  500
  833.      TOP_HEADR        372  383  495
  834.      UNCOMPRSD         35
  835.      UNDR_LIN          50
  836.      UNDR_LIN_OFF      51
  837.      UNEMPHSZD         37
  838.      UNEXPAND          47  574
  839.      UNIT              17
  840.      UN_DBL            39
  841.      UN_WID            42
  842.      UPPER            306  319  324  487  506
  843.      USES              24
  844.      WHITE            183
  845.      WINTTT5           24
  846.      WORD              79  233
  847.      WRITEBETWEEN     196  211  306  307  319  324
  848.      WRT_ADDRESS      580  637
  849.      WRT_CITY         604
  850.      WRT_DATE         595  638
  851.      WRT_PAGE         616  636
  852.      YELLOW           187  194  305
  853.      ZIP               77   78  349  462  464  538  587  608
  854.                                                           D-Xref 6.3
  855.  12-21-1989 at 10 : 04   -  -  Functions and Procedures for :  c:\turbo-5\bulletin\printr2.pas                         Page 16
  856.                                                                                                        Cross Reference Page  4
  857.  
  858.  
  859.         Alphabetic Sort of Functions
  860.       Begin Line  End Line  Function Name    Listing File
  861.  
  862.             80      ForWd   GetSystemDate    c:\turbo-5\bulletin\printr2.pas
  863.            104        125   GetSystemDate    c:\turbo-5\bulletin\printr2.pas
  864.            233        329   IO_NOT_OK        c:\turbo-5\bulletin\printr2.pas
  865.             79      ForWd   IO_Not_OK        c:\turbo-5\bulletin\printr2.pas
  866.            128        137   NumToStr         c:\turbo-5\bulletin\printr2.pas
  867.             81      ForWd   NumToStr         c:\turbo-5\bulletin\printr2.pas
  868.            161        225   Printer_on       c:\turbo-5\bulletin\printr2.pas
  869.             75      ForWd   Printer_on       c:\turbo-5\bulletin\printr2.pas
  870.  
  871.         Alphabetic Sort of Procedures
  872.       Begin Line  End Line  Procedure Name   Listing File
  873.  
  874.             77      ForWd   Banner           c:\turbo-5\bulletin\printr2.pas
  875.            349        520   Banner           c:\turbo-5\bulletin\printr2.pas
  876.            393        409   Banner_Bottom    c:\turbo-5\bulletin\printr2.pas
  877.            377        391   Banner_Top       c:\turbo-5\bulletin\printr2.pas
  878.            412        428   Banner_left      c:\turbo-5\bulletin\printr2.pas
  879.            430        436   Banner_right     c:\turbo-5\bulletin\printr2.pas
  880.            140        159   Beepr            c:\turbo-5\bulletin\printr2.pas
  881.             76      ForWd   Beepr            c:\turbo-5\bulletin\printr2.pas
  882.             82        651   Check_color      c:\turbo-5\bulletin\printr2.pas
  883.             91        102   Check_color      c:\turbo-5\bulletin\printr2.pas
  884.            446        456   Filler           c:\turbo-5\bulletin\printr2.pas
  885.            438        443   Filler_Line      c:\turbo-5\bulletin\printr2.pas
  886.            458        465   Names            c:\turbo-5\bulletin\printr2.pas
  887.            467        479   Report_Title     c:\turbo-5\bulletin\printr2.pas
  888.             78      ForWd   Report_hdr       c:\turbo-5\bulletin\printr2.pas
  889.            538        646   Report_hdr       c:\turbo-5\bulletin\printr2.pas
  890.            482        490   Title            c:\turbo-5\bulletin\printr2.pas
  891.            561        577   Title            c:\turbo-5\bulletin\printr2.pas
  892.            580        593   Wrt_Address      c:\turbo-5\bulletin\printr2.pas
  893.            595        602   Wrt_Date         c:\turbo-5\bulletin\printr2.pas
  894.            604        614   Wrt_city         c:\turbo-5\bulletin\printr2.pas
  895.            616        627   Wrt_page         c:\turbo-5\bulletin\printr2.pas
  896.  
  897.  
  898.      Number Include Files      :     0
  899.      Total Number Functions    :     8
  900.      Total Number Procedures   :    22
  901.      Total Different Variables :   140
  902.      Total Variables Used      :   552
  903.      Total Lines Processed     :   652
  904.